In the field of internal combustion engines, such as those used to power automobiles and trucks, for example, it is common practice to provide some form of electronic engine control module (ECM). Such an ECM may be a single, centralized unit or it may be part of a network of other vehicle controllers coupled by one or more datalinks for sharing of information.
An ECM typically provides electronic control signals to various engine components in order to regulate the operating point of the engine. For example, a typical ECM might provide control signals to the engine fuel injection system and to the electronic ignition system in order to control engine fueling and combustion.
ECMs are also used to measure and collect information about the engine and/or vehicle. For example, most engine control signals are generated using some form of input from an engine parameter measurement device. Therefore, a fuel injection control signal might be formulated by using a signal from a mass air flow sensor as an input, for example. A typical ECM will monitor many such engine measurement transducers in order to product its various control signal outputs.
In addition to making measurements to be used as inputs for generation of ECM control signals, a typical ECM will also measure and store many pieces of data for later use. For example, it is common for the ECM to store the date and time that maintenance was performed or that a calibration value was changed using a service tool. Additional types of information stored by the ECM include recording of unusual occurrences, such as recording each panic stop made by the driver of the vehicle, the highest speed attained by the vehicle, and the highest temperature experienced by the engine coolant, as well as fault information, such as the values of various engine temperatures and pressures when they are out of tolerance, etc. When the ECM stores each of these pieces of information, it is desirable to "stamp" (i.e. associate) each piece of information with real-time (RT) data. In other words, each piece of stored data has associated with it a record that indicates the date and time relevant to the data (usually either when the data was created, stored and/or when the event occurred which caused the creation of the data).
Referring to FIG. 1, there is illustrated a schematic block diagram of a typical prior art apparatus for providing RT stamping of information within an ECM, indicated generally at 10. The ECM is implemented as a microprocessor 12 having a dedicated real-time clock 14 hard wired thereto. The RT clock 14 is non-volatile, meaning that it keeps track of the current real clock time and/or the current date and this information is retained under normal operating conditions, such as vehicle key-off or shut down of the microprocessor 12. Because RT is always available to the microprocessor 12 from the RT clock 14 via the hard wired line 16, the microprocessor 12 is able to perform RT stamping of any data which is stored by the microprocessor 12. For example, data records 18 may be stored by the microprocessor 12 into an associated memory (not shown), wherein each of the data records 18 comprises data 20 gathered by the microprocessor 12 through data input lines (not shown), as well as RT information 22 associated with each piece of data 20.
Although the prior art ECM 10 provides a convenient method for deriving the RT information required for RT stamping of the data 20, the provision of an RT clock 14 with each ECM or controller is relatively expensive, especially when each engine might contain several controllers performing different functions. An alternative prior art strategy is illustrated in FIG. 2, and indicated generally at 30. In the ECM 30, the RT clock 14 is not hard wired to the microprocessor 12, but is instead accessed by the microprocessor 12 through the datalink 32. By providing access to the RT clock 14 via the datalink 32, several different ECMs may share a single RT clock 14. This greatly reduces the system cost.
In the ECM 30, the data records 18 are stored in the same format as in the ECM 10, comprising data 20 and RT stamp 22. However, every time the microprocessor 12 requires an RT stamp 22, it must request the RT information from the RT clock 14 over the datalink 32. Because the microprocessor 12 must retrieve the RT information whenever it is needed over the datalink 32, this alternative design has several drawbacks: 1) it requires a fairly high frequency access of the datalink 32, increasing datalink and microprocessor loading, 2) a time latency is introduced when retrieving RT, because a not insignificant amount of time is required to request RT over the datalink 32 and then transmit RT back to the microprocessor, 3) implementation of this configuration into an RT embedded system can be difficult due to timing constraints.
There is therefore a need for a method and apparatus for providing RT information to an ECM which is cost effective and which avoids the problems associated with prior art designs. The present invention is directed toward meeting this need.